/*******************************************************************************
 * Package: com.hngtrust.iir.risk.service
 * Type:    RiskCompService
 * Date:    2021/5/8 16:07
 *
 * Copyright (c) 2021 HUANENG GUICHENG TRUST CORP.,LTD All Rights Reserved.
 *
 * You may not use this file except in compliance with the License.
 *******************************************************************************/
package com.hngtrust.iir.risk.service;


import com.hngtrust.framework.page.PageResult;
import com.hngtrust.iir.dto.ReqDTO;
import com.hngtrust.iir.news.controller.dto.ListNewsRespVO;
import com.hngtrust.iir.risk.controller.dto.HomePageNewsRespVO;
import com.hngtrust.iir.risk.controller.dto.HomePageNewsTrendVO;
import com.hngtrust.iir.risk.controller.dto.HomePageRiskReqVO;
import com.hngtrust.iir.risk.controller.dto.HomePageRiskRespVO;
import com.hngtrust.iir.risk.controller.dto.ListRiskNewsReqVO;
import com.hngtrust.iir.risk.controller.dto.QueryCompAssociateRiskReqVO;
import com.hngtrust.iir.risk.controller.dto.QueryCompNewsReqVO;
import com.hngtrust.iir.risk.controller.dto.QueryCompRiskReqVO;
import com.hngtrust.iir.risk.controller.dto.RiskHomePageLevelVO;
import com.hngtrust.iir.risk.controller.dto.RiskHomePageReqVO;
import com.hngtrust.iir.risk.controller.dto.RiskTrendVO;
import com.hngtrust.iir.risk.dto.QueryByRiskTypeRespDTO;
import com.hngtrust.iir.risk.dto.QueryCompAssociateDTO;

import java.util.List;

/**
 * 公司风险
 *
 * @author Keqiwei
 * @date 2021/5/8 16:07
 */
public interface RiskCompService {
    /**
     * 根据风险类型查询
     * @param dto
     * @return
     */
    PageResult<QueryByRiskTypeRespDTO> queryListByRiskType(ReqDTO<QueryCompRiskReqVO> dto);
    
    /**
     * 查询公司对应新闻
     * @param dto
     * @return
     */
    PageResult<ListNewsRespVO> queryCompNews(ReqDTO<QueryCompNewsReqVO> dto);
    
    /**
     * 查询关联公司风险
     */
    List<QueryCompAssociateDTO> queryCompAssociateRisk(ReqDTO<QueryCompAssociateRiskReqVO> dto);
    
    
    HomePageRiskRespVO homePageRisk(HomePageRiskReqVO vo);
    
    
    List<RiskHomePageLevelVO> riskHomePageLevel(RiskHomePageReqVO vo);
    
    HomePageNewsRespVO homePageNews(RiskHomePageReqVO vo);
    
    List<HomePageNewsTrendVO> homePageNewsTrend(RiskHomePageReqVO vo);
    
    RiskTrendVO homePageTrend(RiskHomePageReqVO vo);
    
   PageResult<ListNewsRespVO> listRiskNews(ReqDTO<ListRiskNewsReqVO> reqDTO);
}
